package com.lixl.concurrent;

/**
 * 静态内部类和非静态内部类
 * 创建方式不同（
 * 	非静态内部类，需要通过外部类的对象去实例化内部类new A().new B();
 * 	静态内部类，可以通过外部类直接实例化内部类new A.C()。
 * ）
 * @author Administrator
 *
 */
public class OuterClazz {
	public OuterClazz() {
		System.out.println("A init");
	}

	public static void main(String[] args) {
		OuterClazz a = new OuterClazz();
		SubClazzC c = a.new SubClazzC();
		System.out.println(c);

		SubClazzB b = new OuterClazz.SubClazzB();
		System.out.println(b);
	}

	private static class SubClazzB {
		public SubClazzB() {
			System.out.println("init SubClazzB");
		}
	}

	class SubClazzC {
		public SubClazzC() {
			System.out.println("init SubClazzC");
		}
	}

}
